home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / dev / gg / guile-1.4.1.lha / ANON-CVS < prev    next >
Text File  |  2002-02-05  |  5KB  |  119 lines

  1. Anonymous CVS access to Guile ========================================
  2.  
  3. We make the current Guile sources available via anonymous CVS.  Please
  4. keep in mind that these sources are strictly experimental; they will
  5. usually not be well-tested, and may not even compile on some systems.
  6. They may contain interfaces which will change.  They will usually not
  7. be of sufficient quality for use by people not comfortable hacking the
  8. innards of Guile.  Caveat!
  9.  
  10. However, we're providing them anyway for several reasons.  We'd like
  11. to encourage people to get involved in developing Guile.  People
  12. willing to use the bleeding edge of development can get earlier access
  13. to new, experimental features.  Patches submitted relative to recent
  14. sources will be easier for us to evaluate and install, since the
  15. patch's original sources will be closer to what we're working with.
  16. And it allows us to start testing features earlier.
  17.  
  18. Since the CVS tree is arranged for the convenience of the developers,
  19. it requires GCC and GNU Make, which together support automatic
  20. dependency management.  You will also need to install autoconf,
  21. automake, and libtool; the recommended versions are listed in HACKING.
  22.  
  23. To check out a CVS working directory:
  24.  
  25. 1) Install CVS version 1.9 or later on your system.
  26.  
  27. 2) Log into the CVS server:
  28.  
  29.     $ cvs -d :pserver:anoncvs@subversions.gnu.org:/cvs login
  30.  
  31.    At the prompt for `CVS password:', simply press the enter key.
  32.    Once you have logged in, your password is saved in ~/.cvspass, and you
  33.    will not need to enter it again.
  34.  
  35. 3) Check out a module:
  36.  
  37.     $ cvs -z 9 -d :pserver:anoncvs@subversions.gnu.org:/cvs checkout guile-core
  38.  
  39.    This should create a new directory `guile-core' in your current
  40.    directory, and populate it with the current Guile sources.
  41.  
  42.    To check out all modules use:
  43.  
  44.     $ cvs -z 9 -d :pserver:anoncvs@subversions.gnu.org:/cvs checkout guile
  45.  
  46. 4) In the top directory of the source tree, run the command `./autogen.sh'.
  47.    This builds the configure script, Makefile.in, and other derived files
  48.    used by the build system.
  49.  
  50. The modules available for checkout include:
  51.  
  52.   guile-core --- The scheme interpreter itself.
  53.   guile-tcltk --- An interface between Guile and Tcl/Tk.
  54.   guile-scsh --- An incomplete port of scsh to Guile.
  55.   guile-rgx-ctax --- This has been discontinued; use Andrew Archibald's
  56.       distribution instead:
  57.     ftp://ftp.red-bean.com/pub/guile/contrib/misc/guile-lang-allover-0.1.tar.gz
  58.  
  59. Once you have a working directory, you can bring it up to date easily
  60. and efficiently:
  61.  
  62. 1) Go to the top directory of the source tree.  That is, your current
  63.    directory should be the one containing `configure.in', `README',
  64.    and so on.
  65.  
  66. 2) Do the update:
  67.      $ cvs update
  68.  
  69. This will incorporate any changes the developers have made to Guile
  70. since your last update into your source tree.
  71.  
  72.  
  73. Change Notification ==================================================
  74.  
  75. If you would like to receive mail when people commit changes to the
  76. Guile CVS repository, you can subscribe to guile-cvs@gnu.org by using
  77. the Mailman mailing list interface at
  78.  
  79.   <http://mail.gnu.org/mailman/listinfo/guile-cvs>
  80.  
  81.  
  82. Questions ============================================================
  83.  
  84. - It takes forever to do an update; what can I do to speed it up?
  85.  
  86.   CVS tries to be smart about what it sends; it will transmit and
  87.   install only those files that have changed, and will sometimes
  88.   transmit and apply patches instead, to save transmission time.
  89.  
  90.   It is also possible to have CVS compress transmitted data, using zlib.
  91.   Put the following line in your ~/.cvsrc file:
  92.  
  93.   cvs -z 9
  94.  
  95.   See the CVS documentation for more details.
  96.  
  97. - What happens if I've changed files in my working directory, and then
  98.   I do an update?
  99.  
  100.   If you have made local changes to your sources, the `cvs update'
  101.   command will not overwrite them; instead, CVS will try to merge its
  102.   changes with your changes, as if you had applied a patch.  Rejects are
  103.   marked in the sources.
  104.  
  105. - How can I avoid horrible confusion when dealing with branches?
  106.  
  107.   Because the auto* tools are version control system agnostic, there is
  108.   no support for regenerating files based on which branch of the source
  109.   tree you are "on".  This means that "cvs update -r BRANCH" will
  110.   probably leave you w/ inconsistent configure, config.status, etc.,
  111.   which cannot be brought back into sync w/o re-running autogen.sh.
  112.  
  113.   So, the best advice is to:
  114.    (1) dedicate a directory per branch; and
  115.    (2) always run "./autogen.sh && ./configure ..." after a
  116.        "cvs update -r BRANCH"
  117.  
  118.   If you do (1), you only need to do (2) once, so this is Recommended.
  119.